<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>el和data的两种写法</title>
    <script type="text/javascript" src="../js/vue.js"></script>
</head>

<body>

    <!-- 
        data与el的两种写法
            1.el的两种写法
                （1）new Vue时候配置el属性
                （2）先创建Vue实例，随后再通过vm.#mount('#root')指定el的值
            2.data的两种写法
                （1）对象式
                （2）函数式
                如何选择：目前哪种写法都可以，以后学习到组件时，data必须使用函数式，否则会报错
            3.一个重要的原则
                由Vue管理的函数，一定不要写箭头函数，一旦写了箭头函数，this就不再是Vue实例了

     -->
    <div id="root">
        <h1>你好,{{name}}</h1>
    </div>

    <!-- el的两种写法 -->
    <!-- 
        <script type="text/javascript">
        const x = new Vue({
            // el:'#root', 第一种写法
            data: {
                name: '百度'
            }
        })
        console.log(x);
        setTimeout(() => {
            x.$mount('#root') //第二种写法
        }, 1000);
    </script> 
-->

    <!-- data的两种写法 -->
    <script type="text/javascript">
        const x = new Vue({
            el: '#root',
            //data的第一种写法，对象式
            // data: {
            //     name: '百度'
            // }


            //data的第二种写法，函数式
            data: function () {
                console.log('@@@',this);//此处的this是Vue的实例对象
                return {
                    name: '百度'
                }
            }
        })
    </script>
</body>


</html>